package models

// 充电订单表
type OrdChargeOrder struct {
	Orderno *string `gorm:"column:orderno;primarykey"` // 订单号
	TenantId *uint64 `gorm:"column:tenant_id"` // 租户id
	OutsideOrderno *string `gorm:"column:outside_orderno"` // 第三方交易编号 互联互通交易编号
	Ordertime *jsontime.JsonTime `gorm:"column:ordertime"` // 订单时间
	ConnectorCode *string `gorm:"column:connector_code"` // 充电设备接口编码
	EqCode *string `gorm:"column:eq_code"` // 设备编码
	Shopid *uint64 `gorm:"column:shopid"` // 店铺id
	StationId *uint64 `gorm:"column:station_id"` // 充电站id
	CustId *uint64 `gorm:"column:cust_id"` // 用户id
	Account *string `gorm:"column:account"` // 用户账号
	LicensePlate *string `gorm:"column:license_plate"` // 车牌号
	PriceModelId *string `gorm:"column:price_model_id"` // 计费模型ID 桩上报计费模型
	DiscountId *uint64 `gorm:"column:discount_id"` // 充电站优惠活动id
	StartHd *float64 `gorm:"column:start_hd"` // 起始行度
	EndHd *float64 `gorm:"column:end_hd"` // 结束行度
	StartSoc *float64 `gorm:"column:start_soc"` // 起始SOC
	EndSoc *float64 `gorm:"column:end_soc"` // 结束SOC
	CardBalance *float64 `gorm:"column:card_balance"` // 充电卡余额
	StartTime *jsontime.JsonTime `gorm:"column:start_time"` // 充电开始时间
	EndTime *jsontime.JsonTime `gorm:"column:end_time"` // 充电结束时间
	Duration *int32 `gorm:"column:duration"` // 充电时长 充电时长单位秒
	ChargingDl *float64 `gorm:"column:charging_dl"` // 订单电量
	VinCode *string `gorm:"column:vin_code"` // vin码
	TSFees *float64 `gorm:"column:t_s_fees"` // 总服务费
	TEFees *float64 `gorm:"column:t_e_fees"` // 总充电费
	TAmount *float64 `gorm:"column:t_amount"` // 订单总金额
	PaidEFees *float64 `gorm:"column:paid_e_fees"` // 实收充电费
	PaidSFees *float64 `gorm:"column:paid_s_fees"` // 实收服务费
	PaidTFees *float64 `gorm:"column:paid_t_fees"` // 实收总金额
	PayEFees *float64 `gorm:"column:pay_e_fees"` // 应付充电费
	PaySFees *float64 `gorm:"column:pay_s_fees"` // 应付服务费
	PayTFees *float64 `gorm:"column:pay_t_fees"` // 应付总金额
	OrdStatus *uint8 `gorm:"column:ord_status"` // 订单状态 1.订单创建,2.启动中,3.启动失败,4.(启动成功)充电中,5.停止中,6.(停止失败)挂单,7.(停止成功)充电完成
	OrdPayStatus *uint8 `gorm:"column:ord_pay_status"` // 支付状态 1.待支付,2.支付中 3.已支付,4.支付失败
	StartSourceCode *uint8 `gorm:"column:start_source_code"` // 启动来源 1:app,2:小程序,3:H5,4:互联互通
	StartMode *uint8 `gorm:"column:start_mode"` // 启动方式 1:APP,2:刷卡,3:VIN码启动
	IsPrepaidOrder *uint8 `gorm:"column:is_prepaid_order"` // 是否预付款订单
	IsEntPayment *uint8 `gorm:"column:is_ent_payment"` // 是否使用企业支付
	ChargingType *uint8 `gorm:"column:charging_type"` // 充电类型 1:自动充电2:按电量,3:按时间,4:按金额
	Chargingvalue *float64 `gorm:"column:chargingvalue"` // 充电类型值
	ParkReduction *string `gorm:"column:park_reduction"` // 停车减免结果
	Reason *string `gorm:"column:reason"` // 充电结束原因
	CreatedTime *jsontime.JsonTime `gorm:"column:created_time"` 
	UpdatedTime *jsontime.JsonTime `gorm:"column:updated_time"` // 更新时间
	OrdPayTime *jsontime.JsonTime `gorm:"column:ord_pay_time"` // 支付时间 记录支付状态变更时间
}
func (entity *OrdChargeOrder) TableName() string {
	return "ord_charge_order"
}